package com.yida.gwj.deposit.domain.dto.split;

import com.fasterxml.jackson.annotation.JsonFormat;
import com.yida.common.core.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;

/**
 * @author lqq
 * @date 2022-11-15
 */
@ApiModel("业务房屋信息对象")
public class GwjFundsSplitBusinessHouseDTO implements Serializable {
	private static final long serialVersionUID = 1L;

	@ApiModelProperty("业务房屋ID")
	private Long bizHouseId;

	@ApiModelProperty("房屋编号")
	private Long houseId;

	@ApiModelProperty("房屋坐落")
	@Excel(name = "房屋坐落")
	private String houseLocation;

	@ApiModelProperty("楼层号")
	private Long floorNum;

	@ApiModelProperty("房屋标识码")
	private String houseCode;

	@ApiModelProperty("分户号")
	private Long householdNum;

	@ApiModelProperty("房牌号")
	private String roomNum;

	@ApiModelProperty("房屋用途")
	private String useType;

	@ApiModelProperty("预测面积")
	private BigDecimal forecastSize;

	@ApiModelProperty("实测面积")
	private BigDecimal actualSize;

	@ApiModelProperty("名义层")
	private String nominalLayer;

	@ApiModelProperty("业务ID")
	private Long bizId;

	@ApiModelProperty("结构")
	private String buildFramework;

	@ApiModelProperty("户型")
	private String doorModel;

	@ApiModelProperty("业主姓名")
	private String ownerName;

	@ApiModelProperty("楼栋名称")
	@Excel(name = "楼栋名称")
	private String buildName;

	@ApiModelProperty("金额")
	private BigDecimal depositMoney;

	@ApiModelProperty("计算方法ID")
	private Long calculateTypeId;

	@ApiModelProperty("计算方法")
	private String calculateName;

	@ApiModelProperty("计算基数（元/m²）")
	private BigDecimal calculateVal;

	@ApiModelProperty("缴款面积")
	private BigDecimal depositSize;

	@ApiModelProperty("补差")
	private BigDecimal lackMoney;

	@JsonFormat(pattern = "yyyy-MM-dd")
	@ApiModelProperty("缴存日期")
	private Date depositTime;

	@ApiModelProperty("备注")
	private String remark;

	@ApiModelProperty("是否公用户")
	private String publicFlag;

	@JsonFormat(pattern = "yyyy-MM-dd")
	@ApiModelProperty("公用户创建日期")
	private Date publicCreateTime;

	public String getCalculateName() {
		return calculateName;
	}

	public void setCalculateName(String calculateName) {
		this.calculateName = calculateName;
	}

	public String getRemark() {
		return remark;
	}

	public void setRemark(String remark) {
		this.remark = remark;
	}

	public Long getHouseId() {
		return houseId;
	}

	public void setHouseId(Long houseId) {
		this.houseId = houseId;
	}

	public BigDecimal getDepositMoney() {
		return depositMoney;
	}

	public void setDepositMoney(BigDecimal depositMoney) {
		this.depositMoney = depositMoney;
	}

	public Long getCalculateTypeId() {
		return calculateTypeId;
	}

	public void setCalculateTypeId(Long calculateTypeId) {
		this.calculateTypeId = calculateTypeId;
	}

	public BigDecimal getCalculateVal() {
		return calculateVal;
	}

	public void setCalculateVal(BigDecimal calculateVal) {
		this.calculateVal = calculateVal;
	}

	public BigDecimal getDepositSize() {
		return depositSize;
	}

	public void setDepositSize(BigDecimal depositSize) {
		this.depositSize = depositSize;
	}

	public BigDecimal getLackMoney() {
		return lackMoney;
	}

	public void setLackMoney(BigDecimal lackMoney) {
		this.lackMoney = lackMoney;
	}

	public Date getDepositTime() {
		return depositTime;
	}

	public void setDepositTime(Date depositTime) {
		this.depositTime = depositTime;
	}

	public String getBuildName() {
		return buildName;
	}

	public void setBuildName(String buildName) {
		this.buildName = buildName;
	}

	public String getOwnerName() {
		return ownerName;
	}

	public void setOwnerName(String ownerName) {
		this.ownerName = ownerName;
	}

	public String getDoorModel() {
		return doorModel;
	}

	public void setDoorModel(String doorModel) {
		this.doorModel = doorModel;
	}

	public String getBuildFramework() {
		return buildFramework;
	}

	public void setBuildFramework(String buildFramework) {
		this.buildFramework = buildFramework;
	}

	public Long getBizId() {
		return bizId;
	}

	public void setBizId(Long bizId) {
		this.bizId = bizId;
	}

	public String getHouseCode() {
		return houseCode;
	}

	public void setHouseCode(String houseCode) {
		this.houseCode = houseCode;
	}

	public Long getBizHouseId() {
		return bizHouseId;
	}

	public void setBizHouseId(Long bizHouseId) {
		this.bizHouseId = bizHouseId;
	}

	public String getHouseLocation() {
		return houseLocation;
	}

	public void setHouseLocation(String houseLocation) {
		this.houseLocation = houseLocation;
	}

	public Long getFloorNum() {
		return floorNum;
	}

	public void setFloorNum(Long floorNum) {
		this.floorNum = floorNum;
	}

	public Long getHouseholdNum() {
		return householdNum;
	}

	public void setHouseholdNum(Long householdNum) {
		this.householdNum = householdNum;
	}

	public String getRoomNum() {
		return roomNum;
	}

	public void setRoomNum(String roomNum) {
		this.roomNum = roomNum;
	}

	public String getUseType() {
		return useType;
	}

	public void setUseType(String useType) {
		this.useType = useType;
	}

	public BigDecimal getForecastSize() {
		return forecastSize;
	}

	public void setForecastSize(BigDecimal forecastSize) {
		this.forecastSize = forecastSize;
	}

	public BigDecimal getActualSize() {
		return actualSize;
	}

	public void setActualSize(BigDecimal actualSize) {
		this.actualSize = actualSize;
	}

	public String getNominalLayer() {
		return nominalLayer;
	}

	public void setNominalLayer(String nominalLayer) {
		this.nominalLayer = nominalLayer;
	}

	public Date getPublicCreateTime() {
		return publicCreateTime;
	}

	public void setPublicCreateTime(Date publicCreateTime) {
		this.publicCreateTime = publicCreateTime;
	}

	public String getPublicFlag() {
		return publicFlag;
	}

	public void setPublicFlag(String publicFlag) {
		this.publicFlag = publicFlag;
	}

	@Override
	public String toString() {
		final StringBuffer sb = new StringBuffer("GwjFundsSplitBusinessHouseDTO{");
		sb.append("bizHouseId=").append(bizHouseId);
		sb.append("houseId=").append(houseId);
		sb.append(", houseLocation='").append(houseLocation).append('\'');
		sb.append(", floorNum=").append(floorNum);
		sb.append(", houseCode=").append(houseCode);
		sb.append(", householdNum=").append(householdNum);
		sb.append(", roomNum='").append(roomNum).append('\'');
		sb.append(", useType='").append(useType).append('\'');
		sb.append(", forecastSize=").append(forecastSize);
		sb.append(", actualSize=").append(actualSize);
		sb.append(", nominalLayer='").append(nominalLayer).append('\'');
		sb.append(", bizId=").append(bizId);
		sb.append(", buildFramework='").append(buildFramework).append('\'');
		sb.append(", doorModel='").append(doorModel).append('\'');
		sb.append(", ownerName='").append(ownerName).append('\'');
		sb.append(", buildName='").append(buildName).append('\'');
		sb.append(", depositMoney=").append(depositMoney);
		sb.append(", calculateTypeId=").append(calculateTypeId);
		sb.append(", calculateVal=").append(calculateVal);
		sb.append(", depositSize=").append(depositSize);
		sb.append(", lackMoney=").append(lackMoney);
		sb.append(", depositTime=").append(depositTime);
		sb.append(", publicCreateTime=").append(publicCreateTime);
		sb.append(", publicFlag=").append(publicFlag);
		sb.append('}');
		return sb.toString();
	}
}
